﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.creditos.be.liclSolcred;
using com.creditos.be.liclUtil;

namespace liclSolcred.Views
{

    public class FormsParametrosBasicosPresenter : liclSolcred.Views.Viewer<IFormsParametrosBasicosView>
    {
        liclSolcredController oController = new liclSolcredController();

        public FormsParametrosBasicosPresenter()
        {
        
        }

        public void Load()
        {            
            ListarTipoIntegrante(973);
            ListarTipoEvaluacion(976);
            ListarResultado(983);
            ListarVariables();
        }

        public void ListarTipoIntegrante(int intCodigoTabla)
        {
            try
            {
                List<ParametroBE> lstParametro = new List<ParametroBE>();
                lstParametro = oController.ListarParametros(new ParametroBE { CodigoTabla = intCodigoTabla });
                View.CargarParametros(lstParametro);
            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);
            }
        }
        public void ListarTipoEvaluacion(int intCodigoTabla)
        {
            try
            {
                List<ParametroBE> lstParametro = new List<ParametroBE>();
                lstParametro = oController.ListarParametros(new ParametroBE { CodigoTabla = intCodigoTabla });
                View.CargarParametros(lstParametro);
            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);
            }
        }
        public void ListarResultado(int intCodigoTabla)
        {
            try
            {
                List<ParametroBE> lstParametro = new List<ParametroBE>();
                lstParametro = oController.ListarParametros(new ParametroBE { CodigoTabla = intCodigoTabla });
                View.CargarParametros(lstParametro);
            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);
            }
        }

        public void ListarVariables()
        {
            try
            {
                List<ParametrosBasicosBE> lstVariable = new List<ParametrosBasicosBE>();
                lstVariable = oController.ListarVariables();
                View.CargarVariables(lstVariable);
            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);
            }
        }

        public List<ParametrosBasicosBE> ActualizarParametroBasico(ParametrosBasicosBE oParametrosBasicos)
        {
            List<ParametrosBasicosBE> lst = new List<ParametrosBasicosBE>();
            try
            {
                
                lst = oController.ActualizarParametroBasico(oParametrosBasicos);

            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);                
            }
            return lst;
        }

        public void ActualizarParametroBasicoVariable(List<ParametrosBasicosBE> lstParametrosBasicos)
        {
            try
            {
                oController.ActualizarParametroBasicoVariable(lstParametrosBasicos);

            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);
            }
        }

        public void ListarResumenParametrosBasicos()
        {
            try
            {
                List<ParametrosBasicosBE> lstResumen = new List<ParametrosBasicosBE>();
                lstResumen = oController.ListarResumenParametrosBasicos();
                View.CargarResumentParametrosBasicos(lstResumen);
            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);
            }
        }

        public List<ParametrosBasicosBE> ObtenerParametroBasico(ParametrosBasicosBE oParametrosBasicos)
        {
            List<ParametrosBasicosBE> lst = new List<ParametrosBasicosBE>();
            try
            {

                lst = oController.ObtenerParametroBasico(oParametrosBasicos);
                View.ObtenerParametroBasico(lst);

            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);
            }
            return lst;
        }

        public List<ParametrosBasicosBE> ObtenerParametroBasicoVariable(ParametrosBasicosBE oParametrosBasicos)
        {
            List<ParametrosBasicosBE> lst = new List<ParametrosBasicosBE>();
            try
            {

                lst = oController.ObtenerParametroBasicoVariable(oParametrosBasicos);
                View.ObtenerParametroBasicoVariable(lst);

            }
            catch (Exception ex)
            {
                View.MostrarMensajeError(ex.Message);
            }
            return lst;
        }


    }
}
